package com.qqt.csr.workbench.vo.resp;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import lombok.experimental.Accessors;

import java.io.Serial;
import java.io.Serializable;

/**
 * 技能组配置
 */
@Getter
@Setter
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@JsonIgnoreProperties(ignoreUnknown = true)
@Schema(name = "SkillSetConfigInfoRespVO", description = "技能组配置信息")
public class SkillSetConfigInfoRespVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 402641806428531662L;
    /**
     * 技能组id
     */
    @Schema(description = "技能组id", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long skillSetId;

    /**
     * 客服超时断开时间
     */
    @Schema(description = "客服超时断开时间", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer csDisconnTimeout;

    /**
     * 客服超时断开设置：0 未开启；1 开启
     */
    @Schema(description = "客服超时断开设置：0 未开启；1 开启", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer csDisconnTimeoutEnable;

    /**
     * 组内客服统一头像地址
     */
    @Schema(description = "组内客服统一头像地址", requiredMode = Schema.RequiredMode.REQUIRED)
    private String csHeadImg;

    /**
     * 组内客服统一昵称
     */
    @Schema(description = "组内客服统一昵称", requiredMode = Schema.RequiredMode.REQUIRED)
    private String csNickname;

    /**
     * 会话结束提示语
     */
    @Schema(description = "会话结束提示语", requiredMode = Schema.RequiredMode.REQUIRED)
    private String endSessionTip;

    /**
     * 问候语
     */
    @Schema(description = "问候语", requiredMode = Schema.RequiredMode.REQUIRED)
    private String greetingsTip;

    /**
     * 无坐席在线策略：0 仅退出
     */
    @Schema(description = "无坐席在线策略：0 仅退出", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer noSeatPolicy;

    /**
     * 无坐席提示
     */
    @Schema(description = "无坐席提示", requiredMode = Schema.RequiredMode.REQUIRED)
    private String noSeatTip;

    /**
     * 客服超时回复触发时间
     */
    @Schema(description = "客服超时回复触发时间", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer replyCsTimeout;

    /**
     * 客服超时回复触发提醒内容
     */
    @Schema(description = "客服超时回复触发提醒内容", requiredMode = Schema.RequiredMode.REQUIRED)
    private String replyCsTimeoutTip;

    /**
     * 访客超时回复触发时间
     */
    @Schema(description = "访客超时回复触发时间", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer replyVisitorTimeout;

    /**
     * 访客超时回复触发提醒内容
     */
    @Schema(description = "访客超时回复触发提醒内容", requiredMode = Schema.RequiredMode.REQUIRED)
    private String replyVisitorTimeoutTip;

    /**
     * 客服路由策略：0随机；
     */
    @Schema(description = "客服路由策略：0随机；", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer routePolicy;

    /**
     * 访客超时断开时间
     */
    @Schema(description = "访客超时断开时间", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer visitorDisconnTimeout;

    /**
     * 访客超时断开设置：0 未开启；1 开启
     */
    @Schema(description = "访客超时断开设置：0 未开启；1 开启", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer visitorDisconnTimeoutEnable;

}